package com.ygxsk.carhome.response;

import android.os.Parcel;
import android.os.Parcelable;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

/**
 * 车辆合同档案管理实体:这是服务器端  对应手机端就是 档案管理外侧一层
 * 表名 vehicle_archives_manage
 *
 * @author administrator
 * @email 123456678@qq.com
 * @date 2023-07-21 17:14:04
 */
public class ArchivesManage implements Parcelable {

    /**
     * 合同档案ID--单个档案的id，是一个小范畴；
     */
    private String archivesId;

    //合同档案的id
    private String informationId;

    /**
     * 企业ID
     */
    private transient Integer companyId;
    /**
     * 合同类别ID   合同类型
     */
    private String archiveTypeId;

    //合同类型的汉字形式
    private String archivesTypeName;
    /**
     * 园区ID
     */
    private transient String communityId;
    /**
     * 园区（项目）
     */
    private transient String communityName;
    /**
     * 车辆档案id,整个档案的id，是一个大范畴
     */
    private String vehicleId;
    /**
     * 合同名称
     */
    private String archiveName;
    /**
     * 合同编号
     */
    private transient String archiveNo;
    /**
     * 合同方ID
     */
    private transient Integer payerId;
    /**
     * 合同方
     */
    private transient String payer;
    /**
     * 合同金额
     */
    private transient BigDecimal amount;
    /**
     * 合同支付方式（1:月付;2:季付;3:半年付;4:年付;5:一次性结清;6:不定期）
     */
    private transient Integer paymentMode;
    /**
     * 合同签订日期
     */
    private transient String signingDate;
    /**
     * 有效期数值
     */
    private transient Integer validityNum;
    /**
     * 有效期单位
     */
    private transient String validityUnit;
    /**
     * 合同生效时间
     */
    private transient String effectDate;
    /**
     * 合同失效时间
     */
    private transient String expiryDate;
    /**
     * 车辆品牌
     */
    private transient String carBrand;
    /**
     * 甲方名称
     */
    private transient String partyA;
    /**
     * 甲方联系人
     */
    private transient String contactA;
    /**
     * 甲方联系电话
     */
    private transient String phoneA;
    /**
     * 乙方名称
     */
    private String partyB;
    /**
     * 乙方联系人
     */
    private transient String contactB;
    /**
     * 乙方联系电话
     */
    private transient String phoneB;
    /**
     * 丙方名称
     */
    private transient String partyC;
    /**
     * 丙方联系人
     */
    private transient String contactC;
    /**
     * 丙方联系电话
     */
    private transient String phoneC;
    /**
     * 收款金额
     */
    private transient BigDecimal receiveAmount;
    /**
     * 合同状态ID
     */
    private transient Integer archiveStatusId;
    /**
     * 合同方向（0：收款方；1：付款方）
     */
    private transient Integer direction;
    /**
     * 备注
     */
    private transient String comment;
    /**
     * 是否删除（0：否；1：是）
     */
    private transient Integer isDelete;
    /**
     * 创建时间
     */
    private transient String createTime;
    /**
     * 创建人ID
     */
    private transient Integer createCustomerId;
    /**
     * 修改时间
     */
    private transient String updateTime;
    /**
     * 修改人ID
     */
    private transient Integer updateCustomerId;
    /**
     * 审核状态  0待审核  1审核通过  2审核不通过
     */
    private transient Integer auditStatus;
    /**
     * 原因
     */
    private transient String reason;

    /*
     * 品牌型号
     */
    private transient String brandModel;

    //用于添加修改  合同附件路径集合
    private transient List<String> filePathList = new ArrayList<>();

    public String getInformationId() {
        return informationId;
    }

    public void setInformationId(String informationId) {
        this.informationId = informationId;
    }

    public String getBrandModel() {
        return brandModel;
    }

    public void setBrandModel(String brandModel) {
        this.brandModel = brandModel;
    }

    public List<String> getFilePathList() {
        return filePathList;
    }

    public void setFilePathList(List<String> filePathList) {
        this.filePathList = filePathList;
    }

    /**
     * 设置：合同档案ID
     */
//    public void setArchivesId(String archivesId) {
//        this.archivesId = archivesId;
//    }

    /**
     * 获取：合同档案ID
     */
//    public String getArchivesId() {
//        return archivesId;
//    }

    /**
     * 设置：企业ID
     */
    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }

    /**
     * 获取：企业ID
     */
    public Integer getCompanyId() {
        return companyId;
    }

    /**
     * 设置：合同类别ID
     */
    public void setArchiveTypeId(String archiveTypeId) {
        this.archiveTypeId = archiveTypeId;
    }

    /**
     * 获取：合同类别ID
     */
    public String getArchiveTypeId() {
        return archiveTypeId;
    }

    /**
     * 设置：园区ID
     */
    public void setCommunityId(String communityId) {
        this.communityId = communityId;
    }

    /**
     * 获取：园区ID
     */
    public String getCommunityId() {
        return communityId;
    }

    /**
     * 设置：园区（项目）
     */
    public void setCommunityName(String communityName) {
        this.communityName = communityName;
    }

    /**
     * 获取：园区（项目）
     */
    public String getCommunityName() {
        return communityName;
    }

    /**
     * 设置：车辆档案id
     */
    public void setVehicleId(String vehicleId) {
        this.vehicleId = vehicleId;
    }

    /**
     * 获取：车辆档案id
     */
    public String getVehicleId() {
        return vehicleId;
    }

    /**
     * 设置：合同名称
     */
    public void setArchiveName(String archiveName) {
        this.archiveName = archiveName;
    }

    /**
     * 获取：合同名称
     */
    public String getArchiveName() {
        return archiveName;
    }

    /**
     * 设置：合同编号
     */
    public void setArchiveNo(String archiveNo) {
        this.archiveNo = archiveNo;
    }

    /**
     * 获取：合同编号
     */
    public String getArchiveNo() {
        return archiveNo;
    }

    /**
     * 设置：合同方ID
     */
    public void setPayerId(Integer payerId) {
        this.payerId = payerId;
    }

    /**
     * 获取：合同方ID
     */
    public Integer getPayerId() {
        return payerId;
    }

    /**
     * 设置：合同方
     */
    public void setPayer(String payer) {
        this.payer = payer;
    }

    /**
     * 获取：合同方
     */
    public String getPayer() {
        return payer;
    }

    /**
     * 设置：合同金额
     */
    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    /**
     * 获取：合同金额
     */
    public BigDecimal getAmount() {
        return amount;
    }

    /**
     * 设置：合同支付方式（1:月付;2:季付;3:半年付;4:年付;5:一次性结清;6:不定期）
     */
    public void setPaymentMode(Integer paymentMode) {
        this.paymentMode = paymentMode;
    }

    /**
     * 获取：合同支付方式（1:月付;2:季付;3:半年付;4:年付;5:一次性结清;6:不定期）
     */
    public Integer getPaymentMode() {
        return paymentMode;
    }

    /**
     * 设置：合同签订日期
     */
    public void setSigningDate(String signingDate) {
        this.signingDate = signingDate;
    }

    /**
     * 获取：合同签订日期
     */
    public String getSigningDate() {
        return signingDate;
    }

    /**
     * 设置：有效期数值
     */
    public void setValidityNum(Integer validityNum) {
        this.validityNum = validityNum;
    }

    /**
     * 获取：有效期数值
     */
    public Integer getValidityNum() {
        return validityNum;
    }

    /**
     * 设置：有效期单位
     */
    public void setValidityUnit(String validityUnit) {
        this.validityUnit = validityUnit;
    }

    /**
     * 获取：有效期单位
     */
    public String getValidityUnit() {
        return validityUnit;
    }

    /**
     * 设置：合同生效时间
     */
    public void setEffectDate(String effectDate) {
        this.effectDate = effectDate;
    }

    /**
     * 获取：合同生效时间
     */
    public String getEffectDate() {
        return effectDate;
    }

    /**
     * 设置：合同失效时间
     */
    public void setExpiryDate(String expiryDate) {
        this.expiryDate = expiryDate;
    }

    /**
     * 获取：合同失效时间
     */
    public String getExpiryDate() {
        return expiryDate;
    }

    /**
     * 设置：车辆品牌
     */
    public void setCarBrand(String carBrand) {
        this.carBrand = carBrand;
    }

    /**
     * 获取：车辆品牌
     */
    public String getCarBrand() {
        return carBrand;
    }

    /**
     * 设置：甲方名称
     */
    public void setPartyA(String partyA) {
        this.partyA = partyA;
    }

    /**
     * 获取：甲方名称
     */
    public String getPartyA() {
        return partyA;
    }

    /**
     * 设置：甲方联系人
     */
    public void setContactA(String contactA) {
        this.contactA = contactA;
    }

    /**
     * 获取：甲方联系人
     */
    public String getContactA() {
        return contactA;
    }

    /**
     * 设置：甲方联系电话
     */
    public void setPhoneA(String phoneA) {
        this.phoneA = phoneA;
    }

    /**
     * 获取：甲方联系电话
     */
    public String getPhoneA() {
        return phoneA;
    }

    /**
     * 设置：乙方名称
     */
    public void setPartyB(String partyB) {
        this.partyB = partyB;
    }

    /**
     * 获取：乙方名称
     */
    public String getPartyB() {
        return partyB;
    }

    /**
     * 设置：乙方联系人
     */
    public void setContactB(String contactB) {
        this.contactB = contactB;
    }

    /**
     * 获取：乙方联系人
     */
    public String getContactB() {
        return contactB;
    }

    /**
     * 设置：乙方联系电话
     */
    public void setPhoneB(String phoneB) {
        this.phoneB = phoneB;
    }

    /**
     * 获取：乙方联系电话
     */
    public String getPhoneB() {
        return phoneB;
    }

    /**
     * 设置：丙方名称
     */
    public void setPartyC(String partyC) {
        this.partyC = partyC;
    }

    /**
     * 获取：丙方名称
     */
    public String getPartyC() {
        return partyC;
    }

    /**
     * 设置：丙方联系人
     */
    public void setContactC(String contactC) {
        this.contactC = contactC;
    }

    /**
     * 获取：丙方联系人
     */
    public String getContactC() {
        return contactC;
    }

    /**
     * 设置：丙方联系电话
     */
    public void setPhoneC(String phoneC) {
        this.phoneC = phoneC;
    }

    /**
     * 获取：丙方联系电话
     */
    public String getPhoneC() {
        return phoneC;
    }

    /**
     * 设置：收款金额
     */
    public void setReceiveAmount(BigDecimal receiveAmount) {
        this.receiveAmount = receiveAmount;
    }

    /**
     * 获取：收款金额
     */
    public BigDecimal getReceiveAmount() {
        return receiveAmount;
    }

    /**
     * 设置：合同状态ID
     */
    public void setArchiveStatusId(Integer archiveStatusId) {
        this.archiveStatusId = archiveStatusId;
    }

    /**
     * 获取：合同状态ID
     */
    public Integer getArchiveStatusId() {
        return archiveStatusId;
    }

    /**
     * 设置：合同方向（0：收款方；1：付款方）
     */
    public void setDirection(Integer direction) {
        this.direction = direction;
    }

    /**
     * 获取：合同方向（0：收款方；1：付款方）
     */
    public Integer getDirection() {
        return direction;
    }

    /**
     * 设置：备注
     */
    public void setComment(String comment) {
        this.comment = comment;
    }

    /**
     * 获取：备注
     */
    public String getComment() {
        return comment;
    }

    /**
     * 设置：是否删除（0：否；1：是）
     */
    public void setIsDelete(Integer isDelete) {
        this.isDelete = isDelete;
    }

    /**
     * 获取：是否删除（0：否；1：是）
     */
    public Integer getIsDelete() {
        return isDelete;
    }

    /**
     * 设置：创建时间
     */
    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取：创建时间
     */
    public String getCreateTime() {
        return createTime;
    }

    /**
     * 设置：创建人ID
     */
    public void setCreateCustomerId(Integer createCustomerId) {
        this.createCustomerId = createCustomerId;
    }

    /**
     * 获取：创建人ID
     */
    public Integer getCreateCustomerId() {
        return createCustomerId;
    }

    /**
     * 设置：修改时间
     */
    public void setUpdateTime(String updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * 获取：修改时间
     */
    public String getUpdateTime() {
        return updateTime;
    }

    /**
     * 设置：修改人ID
     */
    public void setUpdateCustomerId(Integer updateCustomerId) {
        this.updateCustomerId = updateCustomerId;
    }

    /**
     * 获取：修改人ID
     */
    public Integer getUpdateCustomerId() {
        return updateCustomerId;
    }

    /**
     * 设置：审核状态  0待审核  1审核通过  2审核不通过
     */
    public void setAuditStatus(Integer auditStatus) {
        this.auditStatus = auditStatus;
    }

    /**
     * 获取：审核状态  0待审核  1审核通过  2审核不通过
     */
    public Integer getAuditStatus() {
        return auditStatus;
    }

    /**
     * 设置：原因
     */
    public void setReason(String reason) {
        this.reason = reason;
    }

    /**
     * 获取：原因
     */
    public String getReason() {
        return reason;
    }

    public String getArchivesTypeName() {
        return archivesTypeName;
    }

    public void setArchivesTypeName(String archivesTypeName) {
        this.archivesTypeName = archivesTypeName;
    }

    public String getArchivesId() {
        return archivesId;
    }

    public void setArchivesId(String archivesId) {
        this.archivesId = archivesId;
    }


    @Override
    public int describeContents() {
        return 0;
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeString(this.archivesId);
        dest.writeString(this.informationId);
        dest.writeString(this.archiveTypeId);
        dest.writeString(this.archivesTypeName);
        dest.writeString(this.vehicleId);
        dest.writeString(this.archiveName);
        dest.writeString(this.partyB);
    }

    public void readFromParcel(Parcel source) {
        this.archivesId = source.readString();
        this.informationId = source.readString();
        this.archiveTypeId = source.readString();
        this.archivesTypeName = source.readString();
        this.vehicleId = source.readString();
        this.archiveName = source.readString();
        this.partyB = source.readString();
    }

    public ArchivesManage() {
    }

    protected ArchivesManage(Parcel in) {
        this.archivesId = in.readString();
        this.informationId = in.readString();
        this.archiveTypeId = in.readString();
        this.archivesTypeName = in.readString();
        this.vehicleId = in.readString();
        this.archiveName = in.readString();
        this.partyB = in.readString();
    }

    public static final Creator<ArchivesManage> CREATOR = new Creator<ArchivesManage>() {
        @Override
        public ArchivesManage createFromParcel(Parcel source) {
            return new ArchivesManage(source);
        }

        @Override
        public ArchivesManage[] newArray(int size) {
            return new ArchivesManage[size];
        }
    };
}
